#ifndef DEKKOGLOBAL_H
#define DEKKOGLOBAL_H
#include <QtGlobal>
#include <QObject>

class NewAccountType : public QObject {
    Q_OBJECT
    Q_ENUMS(Type)
public:
    inline NewAccountType(QObject *parent = 0) : QObject(parent)  {}
    enum Type { IMAP, SMTP, PRESET, IMAP_WITH_ADDED_SMTP, ONLINE_ACCOUNT };
};

class DekkoGlobal
{
public:
    static void registerDekkoTypes(const char* uri, int major = 0, int minor = 2);
    static void registerTrojitaCoreTypes(const char *uri, int major = 0, int minor = 1);
private:
    static void registerDekkoModels(int major, int minor);
    static void registerDekkoComponents(int major, int minor);
    static void registerDekkoUtils(int major, int minor);
    static void registerDekkoContacts(int major, int minor);
    static void registerDekkoSettings(int major, int minor);
    static void registerDekkoAccounts(int major, int minor);
    static void registerDekkoComposition(int major, int minor);
    static void registerDekkoExperimental(int major, int minor);
    static void registerDekkoTheme(int major, int minor);
};

#endif // DEKKOGLOBAL_H
